// $ANTLR 3.4 C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g 2012-11-26 15:49:52

package PL.prac10;


import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings({"all", "warnings", "unchecked"})
public class AnalexC extends Lexer {
    public static final int EOF=-1;
    public static final int BLANCO=4;
    public static final int BREAK=5;
    public static final int CADENA=6;
    public static final int CARACTER=7;
    public static final int CHAR=8;
    public static final int COMA=9;
    public static final int COMILLAS=10;
    public static final int COMPARADOR=11;
    public static final int DIGITO=12;
    public static final int DISTINTO=13;
    public static final int DOSPUNTOS=14;
    public static final int ELSE=15;
    public static final int ENTERO=16;
    public static final int FLOAT=17;
    public static final int IDENT=18;
    public static final int IF=19;
    public static final int IGUAL=20;
    public static final int INT=21;
    public static final int INTERROGACION=22;
    public static final int LETRA=23;
    public static final int LLAVE1=24;
    public static final int LLAVE2=25;
    public static final int MAIN=26;
    public static final int MAS=27;
    public static final int MENOS=28;
    public static final int OPERADOR1=29;
    public static final int OPERADOR2=30;
    public static final int PARENTESIS1=31;
    public static final int PARENTESIS2=32;
    public static final int REAL=33;
    public static final int SEPARADOR=34;
    public static final int VOID=35;
    public static final int WHILE=36;

    // delegates
    // delegators
    public Lexer[] getDelegates() {
        return new Lexer[] {};
    }

    public AnalexC() {} 
    public AnalexC(CharStream input) {
        this(input, new RecognizerSharedState());
    }
    public AnalexC(CharStream input, RecognizerSharedState state) {
        super(input,state);
    }
    public String getGrammarFileName() { return "C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g"; }

    // $ANTLR start "VOID"
    public final void mVOID() throws RecognitionException {
        try {
            int _type = VOID;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:7:7: ( 'void' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:7:9: 'void'
            {
            match("void"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "VOID"

    // $ANTLR start "INT"
    public final void mINT() throws RecognitionException {
        try {
            int _type = INT;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:8:6: ( 'int' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:8:8: 'int'
            {
            match("int"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "INT"

    // $ANTLR start "CHAR"
    public final void mCHAR() throws RecognitionException {
        try {
            int _type = CHAR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:9:7: ( 'char' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:9:9: 'char'
            {
            match("char"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CHAR"

    // $ANTLR start "FLOAT"
    public final void mFLOAT() throws RecognitionException {
        try {
            int _type = FLOAT;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:10:8: ( 'float' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:10:10: 'float'
            {
            match("float"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "FLOAT"

    // $ANTLR start "MAIN"
    public final void mMAIN() throws RecognitionException {
        try {
            int _type = MAIN;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:11:7: ( 'main' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:11:9: 'main'
            {
            match("main"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MAIN"

    // $ANTLR start "WHILE"
    public final void mWHILE() throws RecognitionException {
        try {
            int _type = WHILE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:12:8: ( 'while' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:12:10: 'while'
            {
            match("while"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "WHILE"

    // $ANTLR start "IF"
    public final void mIF() throws RecognitionException {
        try {
            int _type = IF;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:13:5: ( 'if' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:13:7: 'if'
            {
            match("if"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "IF"

    // $ANTLR start "ELSE"
    public final void mELSE() throws RecognitionException {
        try {
            int _type = ELSE;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:14:7: ( 'else' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:14:9: 'else'
            {
            match("else"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ELSE"

    // $ANTLR start "BREAK"
    public final void mBREAK() throws RecognitionException {
        try {
            int _type = BREAK;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:15:8: ( 'break' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:15:10: 'break'
            {
            match("break"); 



            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "BREAK"

    // $ANTLR start "BLANCO"
    public final void mBLANCO() throws RecognitionException {
        try {
            int _type = BLANCO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:18:9: ( ( ' ' | '\\t' | '\\r\\n' | '\\n' ) )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:18:11: ( ' ' | '\\t' | '\\r\\n' | '\\n' )
            {
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:18:11: ( ' ' | '\\t' | '\\r\\n' | '\\n' )
            int alt1=4;
            switch ( input.LA(1) ) {
            case ' ':
                {
                alt1=1;
                }
                break;
            case '\t':
                {
                alt1=2;
                }
                break;
            case '\r':
                {
                alt1=3;
                }
                break;
            case '\n':
                {
                alt1=4;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 1, 0, input);

                throw nvae;

            }

            switch (alt1) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:18:12: ' '
                    {
                    match(' '); 

                    }
                    break;
                case 2 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:18:16: '\\t'
                    {
                    match('\t'); 

                    }
                    break;
                case 3 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:18:21: '\\r\\n'
                    {
                    match("\r\n"); 



                    }
                    break;
                case 4 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:18:28: '\\n'
                    {
                    match('\n'); 

                    }
                    break;

            }


            _channel = HIDDEN;

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "BLANCO"

    // $ANTLR start "DIGITO"
    public final void mDIGITO() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:20:18: ( '0' .. '9' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            {
            if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
                input.consume();
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                recover(mse);
                throw mse;
            }


            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DIGITO"

    // $ANTLR start "ENTERO"
    public final void mENTERO() throws RecognitionException {
        try {
            int _type = ENTERO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:21:9: ( ( DIGITO )+ )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:21:11: ( DIGITO )+
            {
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:21:11: ( DIGITO )+
            int cnt2=0;
            loop2:
            do {
                int alt2=2;
                int LA2_0 = input.LA(1);

                if ( ((LA2_0 >= '0' && LA2_0 <= '9')) ) {
                    alt2=1;
                }


                switch (alt2) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            	    {
            	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    if ( cnt2 >= 1 ) break loop2;
                        EarlyExitException eee =
                            new EarlyExitException(2, input);
                        throw eee;
                }
                cnt2++;
            } while (true);


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "ENTERO"

    // $ANTLR start "REAL"
    public final void mREAL() throws RecognitionException {
        try {
            int _type = REAL;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:22:7: ( ( DIGITO )+ '.' ( DIGITO )+ )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:22:9: ( DIGITO )+ '.' ( DIGITO )+
            {
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:22:9: ( DIGITO )+
            int cnt3=0;
            loop3:
            do {
                int alt3=2;
                int LA3_0 = input.LA(1);

                if ( ((LA3_0 >= '0' && LA3_0 <= '9')) ) {
                    alt3=1;
                }


                switch (alt3) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            	    {
            	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    if ( cnt3 >= 1 ) break loop3;
                        EarlyExitException eee =
                            new EarlyExitException(3, input);
                        throw eee;
                }
                cnt3++;
            } while (true);


            match('.'); 

            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:22:23: ( DIGITO )+
            int cnt4=0;
            loop4:
            do {
                int alt4=2;
                int LA4_0 = input.LA(1);

                if ( ((LA4_0 >= '0' && LA4_0 <= '9')) ) {
                    alt4=1;
                }


                switch (alt4) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            	    {
            	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    if ( cnt4 >= 1 ) break loop4;
                        EarlyExitException eee =
                            new EarlyExitException(4, input);
                        throw eee;
                }
                cnt4++;
            } while (true);


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "REAL"

    // $ANTLR start "LETRA"
    public final void mLETRA() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:24:16: ( ( 'a' .. 'z' ) | ( 'A' .. 'Z' ) )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            {
            if ( (input.LA(1) >= 'A' && input.LA(1) <= 'Z')||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
                input.consume();
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                recover(mse);
                throw mse;
            }


            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "LETRA"

    // $ANTLR start "IDENT"
    public final void mIDENT() throws RecognitionException {
        try {
            int _type = IDENT;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:25:7: ( ( LETRA ) ( DIGITO | LETRA )* )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:25:9: ( LETRA ) ( DIGITO | LETRA )*
            {
            if ( (input.LA(1) >= 'A' && input.LA(1) <= 'Z')||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
                input.consume();
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                recover(mse);
                throw mse;
            }


            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:25:17: ( DIGITO | LETRA )*
            loop5:
            do {
                int alt5=2;
                int LA5_0 = input.LA(1);

                if ( ((LA5_0 >= '0' && LA5_0 <= '9')||(LA5_0 >= 'A' && LA5_0 <= 'Z')||(LA5_0 >= 'a' && LA5_0 <= 'z')) ) {
                    alt5=1;
                }


                switch (alt5) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            	    {
            	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= 'A' && input.LA(1) <= 'Z')||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    break loop5;
                }
            } while (true);


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "IDENT"

    // $ANTLR start "COMILLAS"
    public final void mCOMILLAS() throws RecognitionException {
        try {
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:27:19: ( '\"' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:27:21: '\"'
            {
            match('\"'); 

            }


        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "COMILLAS"

    // $ANTLR start "CADENA"
    public final void mCADENA() throws RecognitionException {
        try {
            int _type = CADENA;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:28:8: ( COMILLAS (~ ( '\"' ) )* COMILLAS )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:28:10: COMILLAS (~ ( '\"' ) )* COMILLAS
            {
            mCOMILLAS(); 


            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:28:19: (~ ( '\"' ) )*
            loop6:
            do {
                int alt6=2;
                int LA6_0 = input.LA(1);

                if ( ((LA6_0 >= '\u0000' && LA6_0 <= '!')||(LA6_0 >= '#' && LA6_0 <= '\uFFFF')) ) {
                    alt6=1;
                }


                switch (alt6) {
            	case 1 :
            	    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            	    {
            	    if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '!')||(input.LA(1) >= '#' && input.LA(1) <= '\uFFFF') ) {
            	        input.consume();
            	    }
            	    else {
            	        MismatchedSetException mse = new MismatchedSetException(null,input);
            	        recover(mse);
            	        throw mse;
            	    }


            	    }
            	    break;

            	default :
            	    break loop6;
                }
            } while (true);


            mCOMILLAS(); 


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CADENA"

    // $ANTLR start "CARACTER"
    public final void mCARACTER() throws RecognitionException {
        try {
            int _type = CARACTER;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:30:10: ( '\\'' ( LETRA | DIGITO ) '\\'' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:30:12: '\\'' ( LETRA | DIGITO ) '\\''
            {
            match('\''); 

            if ( (input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= 'A' && input.LA(1) <= 'Z')||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
                input.consume();
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                recover(mse);
                throw mse;
            }


            match('\''); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "CARACTER"

    // $ANTLR start "MAS"
    public final void mMAS() throws RecognitionException {
        try {
            int _type = MAS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:32:5: ( '+' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:32:7: '+'
            {
            match('+'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MAS"

    // $ANTLR start "MENOS"
    public final void mMENOS() throws RecognitionException {
        try {
            int _type = MENOS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:33:7: ( '-' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:33:9: '-'
            {
            match('-'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "MENOS"

    // $ANTLR start "OPERADOR1"
    public final void mOPERADOR1() throws RecognitionException {
        try {
            int _type = OPERADOR1;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:34:11: ( '&&' | '||' )
            int alt7=2;
            int LA7_0 = input.LA(1);

            if ( (LA7_0=='&') ) {
                alt7=1;
            }
            else if ( (LA7_0=='|') ) {
                alt7=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 7, 0, input);

                throw nvae;

            }
            switch (alt7) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:34:13: '&&'
                    {
                    match("&&"); 



                    }
                    break;
                case 2 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:34:20: '||'
                    {
                    match("||"); 



                    }
                    break;

            }
            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "OPERADOR1"

    // $ANTLR start "OPERADOR2"
    public final void mOPERADOR2() throws RecognitionException {
        try {
            int _type = OPERADOR2;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:35:11: ( '/' | '*' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:
            {
            if ( input.LA(1)=='*'||input.LA(1)=='/' ) {
                input.consume();
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                recover(mse);
                throw mse;
            }


            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "OPERADOR2"

    // $ANTLR start "COMPARADOR"
    public final void mCOMPARADOR() throws RecognitionException {
        try {
            int _type = COMPARADOR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:12: ( '<' ( '=' )? | '>' ( '=' )? | '==' )
            int alt10=3;
            switch ( input.LA(1) ) {
            case '<':
                {
                alt10=1;
                }
                break;
            case '>':
                {
                alt10=2;
                }
                break;
            case '=':
                {
                alt10=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 10, 0, input);

                throw nvae;

            }

            switch (alt10) {
                case 1 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:14: '<' ( '=' )?
                    {
                    match('<'); 

                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:17: ( '=' )?
                    int alt8=2;
                    int LA8_0 = input.LA(1);

                    if ( (LA8_0=='=') ) {
                        alt8=1;
                    }
                    switch (alt8) {
                        case 1 :
                            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:18: '='
                            {
                            match('='); 

                            }
                            break;

                    }


                    }
                    break;
                case 2 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:26: '>' ( '=' )?
                    {
                    match('>'); 

                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:29: ( '=' )?
                    int alt9=2;
                    int LA9_0 = input.LA(1);

                    if ( (LA9_0=='=') ) {
                        alt9=1;
                    }
                    switch (alt9) {
                        case 1 :
                            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:30: '='
                            {
                            match('='); 

                            }
                            break;

                    }


                    }
                    break;
                case 3 :
                    // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:36:38: '=='
                    {
                    match("=="); 



                    }
                    break;

            }
            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "COMPARADOR"

    // $ANTLR start "DISTINTO"
    public final void mDISTINTO() throws RecognitionException {
        try {
            int _type = DISTINTO;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:37:10: ( '!' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:37:12: '!'
            {
            match('!'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DISTINTO"

    // $ANTLR start "LLAVE1"
    public final void mLLAVE1() throws RecognitionException {
        try {
            int _type = LLAVE1;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:38:8: ( '{' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:38:10: '{'
            {
            match('{'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "LLAVE1"

    // $ANTLR start "LLAVE2"
    public final void mLLAVE2() throws RecognitionException {
        try {
            int _type = LLAVE2;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:39:8: ( '}' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:39:10: '}'
            {
            match('}'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "LLAVE2"

    // $ANTLR start "PARENTESIS1"
    public final void mPARENTESIS1() throws RecognitionException {
        try {
            int _type = PARENTESIS1;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:40:13: ( '(' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:40:15: '('
            {
            match('('); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "PARENTESIS1"

    // $ANTLR start "PARENTESIS2"
    public final void mPARENTESIS2() throws RecognitionException {
        try {
            int _type = PARENTESIS2;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:41:13: ( ')' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:41:15: ')'
            {
            match(')'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "PARENTESIS2"

    // $ANTLR start "IGUAL"
    public final void mIGUAL() throws RecognitionException {
        try {
            int _type = IGUAL;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:42:7: ( '=' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:42:9: '='
            {
            match('='); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "IGUAL"

    // $ANTLR start "COMA"
    public final void mCOMA() throws RecognitionException {
        try {
            int _type = COMA;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:43:6: ( ',' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:43:8: ','
            {
            match(','); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "COMA"

    // $ANTLR start "SEPARADOR"
    public final void mSEPARADOR() throws RecognitionException {
        try {
            int _type = SEPARADOR;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:44:11: ( ';' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:44:13: ';'
            {
            match(';'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "SEPARADOR"

    // $ANTLR start "INTERROGACION"
    public final void mINTERROGACION() throws RecognitionException {
        try {
            int _type = INTERROGACION;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:45:15: ( '?' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:45:17: '?'
            {
            match('?'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "INTERROGACION"

    // $ANTLR start "DOSPUNTOS"
    public final void mDOSPUNTOS() throws RecognitionException {
        try {
            int _type = DOSPUNTOS;
            int _channel = DEFAULT_TOKEN_CHANNEL;
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:46:11: ( ':' )
            // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:46:13: ':'
            {
            match(':'); 

            }

            state.type = _type;
            state.channel = _channel;
        }
        finally {
        	// do for sure before leaving
        }
    }
    // $ANTLR end "DOSPUNTOS"

    public void mTokens() throws RecognitionException {
        // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:8: ( VOID | INT | CHAR | FLOAT | MAIN | WHILE | IF | ELSE | BREAK | BLANCO | ENTERO | REAL | IDENT | CADENA | CARACTER | MAS | MENOS | OPERADOR1 | OPERADOR2 | COMPARADOR | DISTINTO | LLAVE1 | LLAVE2 | PARENTESIS1 | PARENTESIS2 | IGUAL | COMA | SEPARADOR | INTERROGACION | DOSPUNTOS )
        int alt11=30;
        alt11 = dfa11.predict(input);
        switch (alt11) {
            case 1 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:10: VOID
                {
                mVOID(); 


                }
                break;
            case 2 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:15: INT
                {
                mINT(); 


                }
                break;
            case 3 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:19: CHAR
                {
                mCHAR(); 


                }
                break;
            case 4 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:24: FLOAT
                {
                mFLOAT(); 


                }
                break;
            case 5 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:30: MAIN
                {
                mMAIN(); 


                }
                break;
            case 6 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:35: WHILE
                {
                mWHILE(); 


                }
                break;
            case 7 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:41: IF
                {
                mIF(); 


                }
                break;
            case 8 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:44: ELSE
                {
                mELSE(); 


                }
                break;
            case 9 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:49: BREAK
                {
                mBREAK(); 


                }
                break;
            case 10 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:55: BLANCO
                {
                mBLANCO(); 


                }
                break;
            case 11 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:62: ENTERO
                {
                mENTERO(); 


                }
                break;
            case 12 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:69: REAL
                {
                mREAL(); 


                }
                break;
            case 13 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:74: IDENT
                {
                mIDENT(); 


                }
                break;
            case 14 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:80: CADENA
                {
                mCADENA(); 


                }
                break;
            case 15 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:87: CARACTER
                {
                mCARACTER(); 


                }
                break;
            case 16 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:96: MAS
                {
                mMAS(); 


                }
                break;
            case 17 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:100: MENOS
                {
                mMENOS(); 


                }
                break;
            case 18 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:106: OPERADOR1
                {
                mOPERADOR1(); 


                }
                break;
            case 19 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:116: OPERADOR2
                {
                mOPERADOR2(); 


                }
                break;
            case 20 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:126: COMPARADOR
                {
                mCOMPARADOR(); 


                }
                break;
            case 21 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:137: DISTINTO
                {
                mDISTINTO(); 


                }
                break;
            case 22 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:146: LLAVE1
                {
                mLLAVE1(); 


                }
                break;
            case 23 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:153: LLAVE2
                {
                mLLAVE2(); 


                }
                break;
            case 24 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:160: PARENTESIS1
                {
                mPARENTESIS1(); 


                }
                break;
            case 25 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:172: PARENTESIS2
                {
                mPARENTESIS2(); 


                }
                break;
            case 26 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:184: IGUAL
                {
                mIGUAL(); 


                }
                break;
            case 27 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:190: COMA
                {
                mCOMA(); 


                }
                break;
            case 28 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:195: SEPARADOR
                {
                mSEPARADOR(); 


                }
                break;
            case 29 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:205: INTERROGACION
                {
                mINTERROGACION(); 


                }
                break;
            case 30 :
                // C:\\Users\\Jose\\workspace\\prac10\\src\\main\\java\\analizadores\\AnalexC.g:1:219: DOSPUNTOS
                {
                mDOSPUNTOS(); 


                }
                break;

        }

    }


    protected DFA11 dfa11 = new DFA11(this);
    static final String DFA11_eotS =
        "\1\uffff\10\13\1\uffff\1\46\10\uffff\1\50\11\uffff\2\13\1\53\6\13"+
        "\3\uffff\1\13\1\63\1\uffff\6\13\1\72\1\uffff\1\73\1\13\1\75\1\13"+
        "\1\77\1\13\2\uffff\1\101\1\uffff\1\102\1\uffff\1\103\3\uffff";
    static final String DFA11_eofS =
        "\104\uffff";
    static final String DFA11_minS =
        "\1\11\1\157\1\146\1\150\1\154\1\141\1\150\1\154\1\162\1\uffff\1"+
        "\56\10\uffff\1\75\11\uffff\1\151\1\164\1\60\1\141\1\157\2\151\1"+
        "\163\1\145\3\uffff\1\144\1\60\1\uffff\1\162\1\141\1\156\1\154\1"+
        "\145\1\141\1\60\1\uffff\1\60\1\164\1\60\1\145\1\60\1\153\2\uffff"+
        "\1\60\1\uffff\1\60\1\uffff\1\60\3\uffff";
    static final String DFA11_maxS =
        "\1\175\1\157\1\156\1\150\1\154\1\141\1\150\1\154\1\162\1\uffff\1"+
        "\71\10\uffff\1\75\11\uffff\1\151\1\164\1\172\1\141\1\157\2\151\1"+
        "\163\1\145\3\uffff\1\144\1\172\1\uffff\1\162\1\141\1\156\1\154\1"+
        "\145\1\141\1\172\1\uffff\1\172\1\164\1\172\1\145\1\172\1\153\2\uffff"+
        "\1\172\1\uffff\1\172\1\uffff\1\172\3\uffff";
    static final String DFA11_acceptS =
        "\11\uffff\1\12\1\uffff\1\15\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1"+
        "\uffff\1\25\1\26\1\27\1\30\1\31\1\33\1\34\1\35\1\36\11\uffff\1\13"+
        "\1\14\1\32\2\uffff\1\7\7\uffff\1\2\6\uffff\1\1\1\3\1\uffff\1\5\1"+
        "\uffff\1\10\1\uffff\1\4\1\6\1\11";
    static final String DFA11_specialS =
        "\104\uffff}>";
    static final String[] DFA11_transitionS = {
            "\2\11\2\uffff\1\11\22\uffff\1\11\1\24\1\14\3\uffff\1\20\1\15"+
            "\1\27\1\30\1\21\1\16\1\31\1\17\1\uffff\1\21\12\12\1\34\1\32"+
            "\1\22\1\23\1\22\1\33\1\uffff\32\13\6\uffff\1\13\1\10\1\3\1\13"+
            "\1\7\1\4\2\13\1\2\3\13\1\5\10\13\1\1\1\6\3\13\1\25\1\20\1\26",
            "\1\35",
            "\1\37\7\uffff\1\36",
            "\1\40",
            "\1\41",
            "\1\42",
            "\1\43",
            "\1\44",
            "\1\45",
            "",
            "\1\47\1\uffff\12\12",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "\1\22",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "",
            "\1\51",
            "\1\52",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "\1\54",
            "\1\55",
            "\1\56",
            "\1\57",
            "\1\60",
            "\1\61",
            "",
            "",
            "",
            "\1\62",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "",
            "\1\64",
            "\1\65",
            "\1\66",
            "\1\67",
            "\1\70",
            "\1\71",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "\1\74",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "\1\76",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "\1\100",
            "",
            "",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "",
            "\12\13\7\uffff\32\13\6\uffff\32\13",
            "",
            "",
            ""
    };

    static final short[] DFA11_eot = DFA.unpackEncodedString(DFA11_eotS);
    static final short[] DFA11_eof = DFA.unpackEncodedString(DFA11_eofS);
    static final char[] DFA11_min = DFA.unpackEncodedStringToUnsignedChars(DFA11_minS);
    static final char[] DFA11_max = DFA.unpackEncodedStringToUnsignedChars(DFA11_maxS);
    static final short[] DFA11_accept = DFA.unpackEncodedString(DFA11_acceptS);
    static final short[] DFA11_special = DFA.unpackEncodedString(DFA11_specialS);
    static final short[][] DFA11_transition;

    static {
        int numStates = DFA11_transitionS.length;
        DFA11_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA11_transition[i] = DFA.unpackEncodedString(DFA11_transitionS[i]);
        }
    }

    class DFA11 extends DFA {

        public DFA11(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 11;
            this.eot = DFA11_eot;
            this.eof = DFA11_eof;
            this.min = DFA11_min;
            this.max = DFA11_max;
            this.accept = DFA11_accept;
            this.special = DFA11_special;
            this.transition = DFA11_transition;
        }
        public String getDescription() {
            return "1:1: Tokens : ( VOID | INT | CHAR | FLOAT | MAIN | WHILE | IF | ELSE | BREAK | BLANCO | ENTERO | REAL | IDENT | CADENA | CARACTER | MAS | MENOS | OPERADOR1 | OPERADOR2 | COMPARADOR | DISTINTO | LLAVE1 | LLAVE2 | PARENTESIS1 | PARENTESIS2 | IGUAL | COMA | SEPARADOR | INTERROGACION | DOSPUNTOS );";
        }
    }
 

}